emoji chooser: Make Escape work again
authorMatthias Clasen <mclasen@redhat.com>
Sat, 4 May 2019 16:55:52 +0000 (16:55 +0000)
committerMatthias Clasen <mclasen@redhat.com>
Sat, 4 May 2019 18:18:20 +0000 (18:18 +0000)
Escape is expected to close the Emoji chooser.

gtk/gtkemojichooser.c
gtk/ui/gtkemojichooser.ui

index 0f8763c4f0fd0dc75e0277dd0e14f0a81df41081..bd3760d8bfc578360d3181f7d78e19ea6c932859 100644 (file)
@@ -609,6 +609,13 @@ search_changed (GtkEntry *entry,
   update_headings (chooser);
 }
 
+static void
+stop_search (GtkEntry *entry,
+             gpointer  data)
+{
+  gtk_popover_popdown (GTK_POPOVER (data));
+}
+
 static void
 setup_section (GtkEmojiChooser *chooser,
                EmojiSection   *section,
@@ -760,6 +767,7 @@ gtk_emoji_chooser_class_init (GtkEmojiChooserClass *klass)
 
   gtk_widget_class_bind_template_callback (widget_class, emoji_activated);
   gtk_widget_class_bind_template_callback (widget_class, search_changed);
+  gtk_widget_class_bind_template_callback (widget_class, stop_search);
   gtk_widget_class_bind_template_callback (widget_class, pressed_cb);
   gtk_widget_class_bind_template_callback (widget_class, long_pressed_cb);
 }
index 1f7a2e9485297f38de76113c371e69fa6d1540af..e32d977526aa92170e1ab6f901b2401898268385 100644 (file)
@@ -10,6 +10,7 @@
         <child>
           <object class="GtkSearchEntry" id="search_entry">
             <signal name="search-changed" handler="search_changed"/>
+            <signal name="stop-search" handler="stop_search"/>
           </object>
         </child>
         <child>